package com.danco.training.zaneuskaya.repository;

import java.util.Date;
import java.util.List;

import org.hibernate.HibernateException;

import com.danco.training.zaneuskaya.domain.City;
import com.danco.training.zaneuskaya.domain.Country;
import com.danco.training.zaneuskaya.domain.Education;
import com.danco.training.zaneuskaya.domain.User;

/**
 * @author Zaneuskaya Aliaksandra
 *
 */
public interface EducationDao extends GenericDao<Education, Integer> {

	public List<Education> findEducationsByCity(City city)
			throws HibernateException;

	public List<Education> findEducationByUser(User user)
			throws HibernateException;

	public List<Education> findEducationsByCountry(Country country)
			throws HibernateException;

	public List<Education> findEducationsByLocation(Country country, City city)
			throws HibernateException;

	public List<Education> findEducationsByPeriod(Date from, Date to)
			throws HibernateException;

	public List<Education> findUserEducationsByType(String educationType,
			User user) throws HibernateException;

}
